package com.uphone.magicleafteacher.util;

import android.app.Activity;

import com.luck.picture.lib.PictureSelector;
import com.luck.picture.lib.config.PictureConfig;
import com.luck.picture.lib.config.PictureMimeType;
import com.luck.picture.lib.entity.LocalMedia;

import java.util.List;

/**
 * <pre>
 *     author : 益康臻品
 *     time   : 2018/10/19
 *     desc   :
 *     version: 1.0
 * </pre>
 */
public class PictureSelectUtils {

    /**
     * 打开多选图片
     *
     * @param activity     activity
     * @param localMediaList 已选择的图片
     * @param maxSelectNum 最大选择数量
     * @param enableCrop   是否裁剪
     * @param ratioX       裁剪比例X
     * @param ratioY       裁剪比例Y
     * @param requestCode  requestCode
     */
    public static void openMultiplePicture(Activity activity, List<LocalMedia> localMediaList, int maxSelectNum, boolean enableCrop, int ratioX, int ratioY, int requestCode) {
        //打开相册
        PictureSelector.create(activity)
                .openGallery(PictureMimeType.ofImage())//加载类型
//                .theme(R.style.picture_default_style)//样式
                .maxSelectNum(maxSelectNum)//最大选择数量
                .imageSpanCount(4)//一行显示数量
                .selectionMode(PictureConfig.MULTIPLE)//多选、单选
                .previewImage(true)//是否可以预览
                .isCamera(true)//是否显示拍照按钮
                .isZoomAnim(true)//是否显示缩放动画
                .enableCrop(enableCrop)//是否裁剪
                .selectionMedia(localMediaList)
                .rotateEnabled(false)//裁剪是否可旋转图片
                .scaleEnabled(true)//裁剪是否可放大缩小图片
                .withAspectRatio(ratioX, ratioY)//裁剪比例
                .circleDimmedLayer(false)//是否圆形裁剪
                .showCropFrame(true)//裁剪时是否显示矩形边框
                .showCropGrid(true)//裁剪时是否显示矩形网格
                .isGif(false)//是否显示gif图片
                .forResult(requestCode);//开启
    }

    /**
     * 打开单选图片
     * @param activity  activity
     * @param enableCrop    是否裁剪
     * @param ratioX    裁剪比例X
     * @param ratioY    裁剪比例Y
     * @param circleDimmendLayer    是否圆形裁剪
     * @param requestCode   requestCode
     */
    public static void openSinglePicture(Activity activity, boolean enableCrop, int ratioX, int ratioY,boolean circleDimmendLayer, int requestCode) {
        //打开相册
        PictureSelector.create(activity)
                .openGallery(PictureMimeType.ofImage())//加载类型
//                .theme(R.style.picture_default_style)//样式
                .imageSpanCount(4)//一行显示数量
                .selectionMode(PictureConfig.SINGLE)//多选、单选
                .previewImage(true)//是否可以预览
                .isCamera(true)//是否显示拍照按钮
                .isZoomAnim(true)//是否显示缩放动画
                .enableCrop(enableCrop)//是否裁剪
                .rotateEnabled(false)//裁剪是否可旋转图片
                .scaleEnabled(true)//裁剪是否可放大缩小图片
                .withAspectRatio(ratioX, ratioY)//裁剪比例
                .circleDimmedLayer(circleDimmendLayer)//是否圆形裁剪
                .showCropFrame(false)//裁剪时是否显示矩形边框
                .showCropGrid(false)//裁剪时是否显示矩形网格
                .isGif(false)//是否显示gif图片
                .forResult(requestCode);//开启
    }

    /**
     * 打开单选视频
     * @param activity  activity
     * @param requestCode   requestCode
     */
    public static void openSingleVideo(Activity activity, int requestCode) {
        //打开相册
        PictureSelector.create(activity)
                .openGallery(PictureMimeType.ofVideo())//加载类型
//                .theme(R.style.picture_default_style)//样式
                .imageSpanCount(4)//一行显示数量
                .selectionMode(PictureConfig.SINGLE)//多选、单选
                .previewImage(true)//是否可以预览
                .isCamera(true)//是否显示拍照按钮
                .isZoomAnim(true)//是否显示缩放动画
                .enableCrop(false)//是否裁剪
                .rotateEnabled(false)//裁剪是否可旋转图片
                .scaleEnabled(true)//裁剪是否可放大缩小图片
                .withAspectRatio(0, 0)//裁剪比例
                .circleDimmedLayer(false)//是否圆形裁剪
                .showCropFrame(false)//裁剪时是否显示矩形边框
                .showCropGrid(false)//裁剪时是否显示矩形网格
                .isGif(false)//是否显示gif图片
                .forResult(requestCode);//开启
    }

    /**
     * 打开单选音频
     * @param activity  activity
     * @param requestCode   requestCode
     */
    public static void openSingleAudio(Activity activity, int requestCode) {
        //打开相册
        PictureSelector.create(activity)
                .openGallery(PictureMimeType.ofAudio())//加载类型
//                .theme(R.style.picture_default_style)//样式
                .imageSpanCount(4)//一行显示数量
                .selectionMode(PictureConfig.SINGLE)//多选、单选
                .previewImage(true)//是否可以预览
                .isCamera(true)//是否显示拍照按钮
                .isZoomAnim(true)//是否显示缩放动画
                .enableCrop(false)//是否裁剪
                .rotateEnabled(false)//裁剪是否可旋转图片
                .scaleEnabled(true)//裁剪是否可放大缩小图片
                .withAspectRatio(0, 0)//裁剪比例
                .circleDimmedLayer(false)//是否圆形裁剪
                .showCropFrame(false)//裁剪时是否显示矩形边框
                .showCropGrid(false)//裁剪时是否显示矩形网格
                .isGif(false)//是否显示gif图片
                .forResult(requestCode);//开启
    }
}
